

public class Solution {
/**
 * 在一个二维数组中，每一行都按照从左到右递增的顺序排序，每一列都按照从上到下递增的顺序排序。
 * 请完成一个函数，输入这样的一个二维数组和一个整数，判断数组中是否含有该整数。
 */
    public static boolean Find(int target, int [][] array) {
        if(array==null || array.length==0)
            return false;
        int m = array.length;
        int n = array[0].length;
        return Findtarget(target,array,0,m-1,0,n-1);
    }

    public static boolean Findtarget(int target,int[][] array,int rowstart,int rowend,
                                     int colstart,int colend){
        if(rowstart>=array.length || colend<0)
            return false;
        if(target<array[rowstart][colend])
            return Findtarget(target,array,rowstart,rowend,colstart,colend-1);
        else if(target>array[rowstart][colend])
            return Findtarget(target,array,rowstart+1,rowend,colstart,colend);
        else
            return true;
    }
    public static  void main(String[] args){
        int[][] array = {{1,2,8,9},{2,4,9,12},{4,7,10,13},{6,8,11,15}};
        boolean result = Find(16,array);
        System.out.println(1);
    }
}